~ give meaningful error messages

— from here , which offers lots of nuance also